Increasing the Instruction-Level Parallelism through Data-Flow Manipulation
نویسندگان
چکیده
In recent years several techniques for exceeding the program’s data-flow constraints have been proposed. These include value prediction, instruction reuse, and dependency redirection. In this paper we show how they can be regarded as one universal method of performing what we term result reuse. We study in depth the dependency redirection derivative and propose several hardware schemes to accomplish it. First, we summarize the necessary changes to the execution core, and propose a novel mechanism that allows us to treat value-identical instructions symmetrically (disregarding their original ordering). To perform value-identity detection, two options are explored: a new cost-effective value-identity predictor that is highly accurate; and a safe method, to determine valueidentity through expression tracking. In addition we provide two specific applications of the techniques. The first eliminates unnecessary load operations – redundant load elimination. The second technique translates data-dependencies based on control-flow speculation, effectively using the branch predictor to perform value-speculation.
منابع مشابه
Limits of Instruction Level Parallelism with Data Speculation
Increasing the instruction level parallelism (ILP) exploited by the processor is one of the key issues to boost the performance of future generation processors. Current processor organizations include different mechanisms to overcome the limitations imposed by name and control dependences but no mechanism targeting to data dependences. Thus, these dependences will become one of the main bottlen...
متن کاملLimits of Instruction Level Parallelism with Data Value Speculation
Increasing the instruction level parallelism (ILP) is one of the key issues to boost the performance of future generation processors. Current processor organizations include different mechanisms to overcome the limitations imposed by name and control dependences but no mechanisms targeting to data dependences. Thus, these dependences will become one of the main bottlenecks in the future. Data v...
متن کاملLimits of Instruction Level Parallelism with Data Speculation
Increasing the instruction level parallelism (ILP) exploited by the processor is one of the key issues to boost the performance of future generation processors. Current processor organizations include different mechanisms to overcome the limitations imposed by name and control dependences but no mechanism targeting to data dependences. Thus, these dependences will become one of the main bottlen...
متن کاملDeep Jam: Conversion of Coarse-Grain Parallelism to Fine-Grain and Vector Parallelism
A number of computational applications lack instruction-level parallelism. This loss is particularly acute on sequences of dependent instructions on wide-issue or deeply pipelined architectures. We consider four real applications from computational biology, cryptanalysis, and data compression. These applications are characterized by long sequences of dependent instructions, irregular control-fl...
متن کاملExploring Instruction Level Parallelism Using Resource Flow Execution
Due to clock frequency limitations, performing more computer operations in parallel is now being more widely explored for increasing total execution performance. Several varieties of parallelism are available, with the easiest and most attractive being thread-level parallelism. Recently introduced microprocessors have provided capabilities such as: multiple threads multiplexed onto a single CPU...
متن کامل